# 随机抽样RDD的数据
#coding:utf8
from pyspark import SparkContext,SparkConf

if __name__ == '__main__':
    conf = SparkConf().setAppName("test").setMaster("local[*]")
    sc = SparkContext(conf=conf)

    rdd = sc.parallelize([1,3,2,5,3,6,8,4,2,4,5,1],3)

    # 如果直接collect的话有时候会内存不足，所以进行随机抽样
    # withReplacement：是否允许重复（回放），注意是位置的重复而不是值重复
    # num：抽样数据要多少
    # seed：随机数种子，如果种子不变那函数结果不变（一般不设置）
    print(rdd.takeSample(withReplacement=False, num=9, seed=1))